// 定义变量的时候，如果变量的数据类型为 基本的数据类型的话，直接写数据类型就可以
// 但是 如果变量的值是对象的话 --- 使用接口
// 接口可以以 I 开头
// 接口的内部使用 ; 隔开
// 变量，函数，函数的参数都可以设置类型的注解
// java  
//    public void test () {} 无返回值的函数 
//    public int test () {} 返回值为 int 类型
interface IPerson {
  firstName: string;
  lastName: string;
}

// 返回也可以用户返回值的类型
// function test (): void {} 无返回值
// function test (): string {} 返回值为 字符串
function gretter (person: IPerson): string { // 参数的类型注解
  return 'hello ' + person.firstName + person.lastName
}

// 变量的类型注解
let user1: IPerson = { firstName: 'wu', lastName: 'daxun'}

gretter(user1)